ATM-SOFT-PVC-MIB DEFINITIONS ::= BEGIN

IMPORTS
        enterprises                             FROM RFC1155-SMI
        MODULE-IDENTITY, OBJECT-TYPE,
        NOTIFICATION-TYPE,
        Counter32, Gauge32, Integer32           FROM SNMPv2-SMI
        TEXTUAL-CONVENTION, RowStatus,
        TruthValue, TimeStamp                   FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP,
        NOTIFICATION-GROUP                      FROM SNMPv2-CONF
        ifIndex                                 FROM IF-MIB
        atmVplVpi, atmVclVpi,
        atmVclVci                               FROM ATM-MIB;

atmSoftPvcMIB MODULE-IDENTITY
        LAST-UPDATED    "200202110000Z"
        ORGANIZATION    "The ATM Forum."
        CONTACT-INFO
            "The ATM Forum
             Presidio of San Francisco
             P.O. Box 29920
             527B Ruger Street
             San Francisco, CA 94129-0920 USA
             Phone: +1 415-561-6275
             Fax: +1 415-561-6120
             info@atmforum.com"
        DESCRIPTION
                "ATM Soft PVC MIB"
        REVISION    "200202110000Z"
        DESCRIPTION
                "Updated version of the Soft PVC MIB released with the
                PNNI 1.1 specification (af-pnni-0055.002)."
        REVISION    "9905210000Z"
        DESCRIPTION
                "Updated version of the Soft PVC MIB released with the
                PNNI SPVC Addendum version 1.0 (af-cs-0127.000)."
        REVISION        "9705010000Z"
        DESCRIPTION
                "Updated version of the Soft PVC MIB released with the
                PNNI V1.0 Errata and PICS (af-pnni-0081.000)."
        REVISION        "9606210000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { atmfSoftPvc 1 }

atmForum                OBJECT IDENTIFIER ::= { enterprises 353 }
atmForumNetworkManagement       OBJECT IDENTIFIER ::= { atmForum 5 }
atmfSoftPvc             OBJECT IDENTIFIER ::= { atmForumNetworkManagement 5 }

atmSoftPvcMIBObjects  OBJECT IDENTIFIER ::= { atmSoftPvcMIB 1 }
atmSoftPvcMIBTraps    OBJECT IDENTIFIER ::= { atmSoftPvcMIB 2 }

AtmAddr ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
                "The ATM address used by the network entity.
                The address types are: no address (0 octets),
                E.164 (8 octets)and NSAP (20 octets).
                Note: The E.164 address is encoded in BCD format."
        SYNTAX    OCTET STRING (SIZE(0|8|20))
--
-- This MIB contains five tables and a number of scalars. The scalars
-- contain overall status information and counters. The tables are:
--     Soft PVC VCCs - manage Soft PVCC at originating switch
--     Soft PVC VPCs - manage Soft PVPC at originating switch
--     Interface Soft PVC Address
--       Currently failing Soft PVCC table
--       Currently failing Soft PVPC table
--
-- Traffic statistics for Soft PVCCs and Soft PVPCs are accessible 
-- via the atmVclStatTable and atmVplStatTable, as defined in the
-- Supplemental AtomMIB
--


atmSoftPvcBaseGroup     OBJECT IDENTIFIER ::= { atmSoftPvcMIBObjects 1}

atmSoftPvcCallFailuresTrapEnable        OBJECT-TYPE
        SYNTAX  TruthValue
        MAX-ACCESS      read-write
        STATUS  current
        DESCRIPTION
                "Allows the generation of traps in response to call
                failures. By default, this object is set to 'false'."
        ::= { atmSoftPvcBaseGroup 1 }


atmSoftPvcCallFailures  OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "The number of times a series of call attempts has failed to
                establish a Soft PVCC or Soft PVPC. The number of call
                attempts in a series is determined by
                atmSoftPVccRetryThreshold or atmSoftPVpcRetryThreshold,
                respectively."
        ::= {atmSoftPvcBaseGroup 2 }


atmSoftPvcCurrentlyFailingSoftPVccs     OBJECT-TYPE
        SYNTAX  Gauge32
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "The current number of Soft PVCCs for which there is
                an active row in the atmSoftPVccTable having an
                atmSoftPVccOperStatus with a value other than 'connected'."
        ::= { atmSoftPvcBaseGroup 3 }


atmSoftPvcCurrentlyFailingSoftPVpcs     OBJECT-TYPE
        SYNTAX  Gauge32
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "The current number of Soft PVPCs for which there is an
                active row in the atmSoftPVpcTable having an 
                atmSoftPVpcOperStatus with a value other than 'connected'."
        ::= { atmSoftPvcBaseGroup 4 }


atmSoftPvcNotificationInterval  OBJECT-TYPE
        SYNTAX  INTEGER (0..3600)
        UNITS           "seconds"
        MAX-ACCESS      read-write
        STATUS  current
        DESCRIPTION
                "The minimum interval between the sending
                of atmSoftPvcCallFailuresTrap notifications."
        DEFVAL { 30 }
        ::= { atmSoftPvcBaseGroup 5 }


--
-- Table to manage Soft PVCCs.
--

atmSoftPVccTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF AtmSoftPVccEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "The (conceptual) table used to manage Soft
                Permanent Virtual Channel Connections (Soft PVCCs).
                The Soft PVCC table is applicable only to switches."
        ::= { atmSoftPvcMIBObjects 2 }


atmSoftPVccEntry        OBJECT-TYPE
        SYNTAX  AtmSoftPVccEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "Each entry in this table represents a  Soft
                Permanent Virtual Channel Connection (Soft PVCC)
                originating at a switch interface.

                A Soft PVCC is a VCC that is:
                  - provisioned at the originating (source)
                        interface of the connection
                  - established by signalling procedures
                        across a network to a destination interface.

                A row in the atmVclTable must be created,
                defining a VCL on the source interface, prior to
                creating an atmSoftPVccEntry row. The row in the
                atmVclTable must be active prior to activating the
                atmSoftPVccEntry row.

                The contents of this table reflect only the
                characteristics unique to a Soft PVCC. The traffic
                parameters are defined in the VCL row for the source
                interface, as specified in the ATOMMIB (RFC2515) and 
                the forthcoming addition, the Supplemental ATOMMIB.

                When a row is made active, an attempt is made
                to set up a switched connection to an interface at
                the destination switch. No objects (other than
                atmSoftPVccRowStatus) can be set while the row is 
                active.

                At the destination, the VCL may be defined (but 
                not cross-connected) prior to arrival of the Setup 
                request.

                The combination of ifIndex, atmVclVpi, and atmVclVci
                specified in the index clause of this entry serves to
                identify the VCL on the source interface. The
                atmSoftPVccLeafReference object aids in distinguishing
                between leaves of a point-to-multipoint Soft PVCC."
        INDEX   { ifIndex,
                atmVclVpi,
                atmVclVci,
                atmSoftPVccLeafReference }
        ::= { atmSoftPVccTable 1 }


AtmSoftPVccEntry ::=
        SEQUENCE        {
                        atmSoftPVccLeafReference                INTEGER,
                        atmSoftPVccTargetAddress                AtmAddr,
                        atmSoftPVccTargetSelectType             INTEGER,
                        atmSoftPVccTargetVpi                    INTEGER,
                        atmSoftPVccTargetVci                    INTEGER,
                        atmSoftPVccLastReleaseCause             INTEGER,
                        atmSoftPVccLastReleaseDiagnostic        OCTET STRING,
                        atmSoftPVccOperStatus                   INTEGER,
                        atmSoftPVccRestart                      INTEGER,
                        atmSoftPVccRetryInterval                INTEGER,
                        atmSoftPVccRetryTimer                   INTEGER,
                        atmSoftPVccRetryThreshold               INTEGER,
                        atmSoftPVccRetryFailures                Gauge32,
                        atmSoftPVccRetryLimit                   INTEGER,
                        atmSoftPVccRowStatus                    RowStatus,
                        atmSoftPVccTargetDlci                   Integer32,
                        atmSoftPVccTargetType                   INTEGER,
                        atmSoftPVccTargetVpci                   INTEGER
                        }


atmSoftPVccLeafReference OBJECT-TYPE
        SYNTAX  INTEGER  (1..65535)
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "An arbitrary integer which, in the case of the
                source VCL having an atmVclCastType of
                'p2mpRoot', serves to distinguish between the 
                multiple leaves attached to a root of a 
                point-to-multipoint Soft PVCC. If the atmVclCastType 
                is not 'p2mpRoot' the value 1 shall be used."
        ::= { atmSoftPVccEntry 1 }


atmSoftPVccTargetAddress        OBJECT-TYPE
        SYNTAX  AtmAddr
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The target ATM Address of this Soft PVCC.  If no
                address is supplied, no attempts to establish the
                Soft PVCC are initiated."
        ::= { atmSoftPVccEntry 2 }


atmSoftPVccTargetSelectType     OBJECT-TYPE
        SYNTAX  INTEGER {
                                required(1),
                                any(2)
                        }
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Indicates whether the target VPCI/VCI values
                are to be used at the destination.

                If the value 'any' is specified, the destination
                switch will choose the VPCI/VCI values. In such a
                case, once the Soft PVCC atmSoftPVccOperStatus
                value is 'connected', the value of this object
                changes to 'required', such that the same VPCI/VCI
                values will continue to be used even if the connection
                is subsequently torn down and re-established. The
                VPCI/VCI values chosen will be available for reading in 
                atmSoftPVccTargetVpci and atmSoftPVccTargetVci.

                If the value 'required' is specified, then values
                must be supplied for objects atmSoftPVccTargetVpci
                and atmSoftPVccTargetVci prior to activation of the
                row. These values are then to be used at the destination."
        DEFVAL { required }
        ::= { atmSoftPVccEntry 3 }


atmSoftPVccTargetVpi    OBJECT-TYPE
        SYNTAX  INTEGER (0..4095)
        MAX-ACCESS      read-create
        STATUS  deprecated
        DESCRIPTION
                "The VPI value of the VCL used at the target interface.
                This value is not relevant when the value of 
                atmSoftPVccTargetSelectType is 'any'.
 
                This object is replaced by the new object
                atmSoftPVccTargetVpci."
        DEFVAL { 0 }
        ::= { atmSoftPVccEntry 4 }


atmSoftPVccTargetVci    OBJECT-TYPE
        SYNTAX  INTEGER  (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The VCI value of the VCL used at the target interface.
                This value must be filled in when the
                atmSoftPVccTargetSelectType is set to 'required'.This 
                value is not relevant when the value of 
                atmSoftPVccTargetSelectType is 'any'."
        ::= { atmSoftPVccEntry 5 }


atmSoftPVccLastReleaseCause     OBJECT-TYPE
        SYNTAX  INTEGER(1..127)
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Value of the Cause field of the Cause
                Information Element in the last RELEASE
                signalling message received for this Soft PVCC.
                Indicates the reason for the Release."
        ::= { atmSoftPVccEntry 6 }


atmSoftPVccLastReleaseDiagnostic        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..8))
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Value of the first 8 bytes of diagnostic information
                from the Cause field of the Cause Information Element
                in the last RELEASE signalling message received for
                this Soft PVCC."
        ::= { atmSoftPVccEntry 7 }


atmSoftPVccOperStatus     OBJECT-TYPE
        SYNTAX  INTEGER {
                                other(1),
                                establishmentInProgress(2),
                                connected(3),
                                retriesExhausted(4),
                                noAddressSupplied(5),
                                lowerLayerDown(6)
                                }
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Describes the status of the Soft PVCC.  Valid values
                are:
                   other              - none of the types specified below
                   establishmentInProgress - connection or party is not
                                             operational, but setup or add
                                             party attempts are ongoing
                   connected          - connection or party is currently
                                        operational
                   retriesExhausted   - retry limit has been reached and
                                        setup or add party attempts have
                                        ceased
                   noAddressSupplied  - no remote address has been
                                        configured, so no setup or add
                                        party attempts are initiated
                   lowerLayerDown     - underlying ATM interface is not
                                        operational
                When the row is not 'active', the value of this
                object is 'other'."
        ::= { atmSoftPVccEntry 8 }


atmSoftPVccRestart      OBJECT-TYPE
        SYNTAX  INTEGER {
                        restart(1),
                        noop(2)
                        }
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "When the value is set to 'restart' the Soft PVCC
                is released if necessary and a new setup procedure
                is begun. As a result of this action, the
                atmSoftPVccOperStatus object transitions to
                'establishmentInProgress' (if not already in this state)
                and the atmSoftPVccRetryFailures object is cleared

                When the value is set to 'noop' no operation is
                performed. When read, the value 'noop' is returned."
        ::= { atmSoftPVccEntry 9 }


atmSoftPVccRetryInterval        OBJECT-TYPE
        SYNTAX  INTEGER (0..3600)
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Defines the period to wait before attempting
                to establish the Soft PVCC after the first failed call
                attempt.  The time to wait between subsequent call
                attempts may differ to implement a backoff scheme.
                Zero represents an infinite interval indicating no
                retries."
        DEFVAL { 10 }
        ::= { atmSoftPVccEntry 10 }


atmSoftPVccRetryTimer   OBJECT-TYPE
        SYNTAX  INTEGER (0..86400)
        UNITS           "seconds" 
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Indicates the current value of the retry timer for
                this connection. When the value reaches zero an attempt
                will be made to establish the Soft PVCC. When the timer
                is not running, the value zero shall be returned."
        ::= { atmSoftPVccEntry 11 }


atmSoftPVccRetryThreshold       OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Indicates the number of consecutive call setup attempts for
                the same Soft PVCC which need to fail before the
                atmSoftPvcCallFailures object is incremented. A value of
                zero indicates that an infinite number of call attempts
                are required to increment the atmSoftPvcCallFailures object
                and thus disables alarms for the Soft PVCC."
        DEFVAL { 1 }
        ::= { atmSoftPVccEntry 12 }


atmSoftPVccRetryFailures        OBJECT-TYPE
        SYNTAX  Gauge32 
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Indicates how many attempts to establish the connection
                have failed.  This count is reset whenever a connection
                is successfully established or the Soft PVCC is restarted."
        ::= { atmSoftPVccEntry 13 }


atmSoftPVccRetryLimit   OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Sets a maximum limit on how many consecutive unsuccessful
                call setup attempts can be made before stopping the attempt
                to set up the connection. If this limit is reached then
                management action will be required (e.g. setting 
                atmSoftPVccRestart to 'restart') to initiate a new attempt
                to establish the connection. A value of zero indicates
                no limit - the attempts will continue until successful."
        DEFVAL { 0 }
        ::= { atmSoftPVccEntry 14 }


atmSoftPVccRowStatus    OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Used to create and delete a Soft PVCC. When this
                object is set to 'active' an attempt is made to
                set up the Soft PVCC. When this object has the value
                'active' and is set to another value, any
                set-up or connection in-progress is released."
        ::= { atmSoftPVccEntry 15 }


atmSoftPVccTargetDlci   OBJECT-TYPE
        SYNTAX  Integer32
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The DLCI value at the target Frame Relay interface.

                This value is not relevant when the value of
                atmSoftPVccTargetType is other than 'frameRelay' or
                when the atmSoftPVccTargetSelectType is 'any'."
        ::= { atmSoftPVccEntry 16 }


atmSoftPVccTargetType   OBJECT-TYPE
        SYNTAX  INTEGER {
                                other(1),
                                atm(2),
                                frameRelay(3)
                                }
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The protocol (e.g. ATM, Frame Relay) used at the target
                interface.

                The atmSoftPVccTargetVpci and atmSoftPVccTargetVci
                objects are only relevant if the target protocol is
                'atm'. Otherwise, no VPCI/VCI should be included in the
                SETUP message.

                The atmSoftPVccTargetDlci object is only relevant if the
                target protocol is 'frameRelay'. Otherwise, no DLCI
                should be included in the SETUP message."
        DEFVAL { atm }
        ::= { atmSoftPVccEntry 17 }


atmSoftPVccTargetVpci   OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The VPCI value of the VCL used at the target interface.
 
                This value is not relevant when the value of
                atmSoftPVccTargetSelectType is 'any'."
        DEFVAL { 0 }
        ::= { atmSoftPVccEntry 18 }
 
 
-- Table to manage Soft PVPCs

-- 
-- The following MIB definition includes support for point to 
-- multipoint Soft PVPCs. Version 1.0 of the PNNI specification does
-- not allow the use of point to multipoint Soft PVPCs. The value
-- of atmSoftPVpcLeafReference should always be set to 1 indicating
-- a point to point Soft PVPC.
-- 


atmSoftPVpcTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF AtmSoftPVpcEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "The (conceptual) table used to manage Soft
                Permanent Virtual Path Connections (Soft PVPCs)
                The Soft PVPC table is applicable only to switches."
        ::= { atmSoftPvcMIBObjects 3 }


atmSoftPVpcEntry        OBJECT-TYPE
        SYNTAX  AtmSoftPVpcEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "Each entry in this table represents a  Soft
                Permanent Virtual Path Connection (Soft PVPC)
                originating at a switch interface.

                A Soft PVPC is a VPC that is:
                  - provisioned at the originating (source)
                        interface of the connection
                  - established by signalling procedures
                        across a network to a destination interface.

                A row in the atmVplTable must be created,
                defining a VPL on the source interface, prior to
                creating an atmSoftPVpcEntry row. The row in the
                atmVplTable must be active prior to activating the
                atmSoftPVpcEntry row.

                The contents of this table reflect only the
                characteristics unique to a Soft PVPC. The traffic
                parameters are defined in the VPL row for the source
                interface, as specified in the ATOMMIB (RFC2515) and
                the forthcoming addition, the Supplemental ATOMMIB.

                When a row is made active, an attempt is made
                to set up a switched connection to an interface at
                the destination switch. No objects (other than
                atmSoftPVpcRowStatus) can be set while the row is
                active.

                At the destination, the VPL may be defined (but
                not cross-connected) prior to arrival of the Setup
                request.

                The combination of ifIndex, atmVplVpi specified
                in the index clause of this entry serves to
                identify the VPL on the source interface. The
                atmSoftPVpcLeafReference object aids in distinguishing
                between leaves of a point-to-multipoint Soft PVPC."
        INDEX   { ifIndex,
                atmVplVpi,
                atmSoftPVpcLeafReference }
        ::= { atmSoftPVpcTable 1 }


AtmSoftPVpcEntry ::=
        SEQUENCE {
                atmSoftPVpcLeafReference                INTEGER,
                atmSoftPVpcTargetAddress                AtmAddr,
                atmSoftPVpcTargetSelectType             INTEGER,
                atmSoftPVpcTargetVpi                    INTEGER,
                atmSoftPVpcLastReleaseCause             INTEGER,
                atmSoftPVpcLastReleaseDiagnostic        OCTET STRING,
                atmSoftPVpcOperStatus                   INTEGER,
                atmSoftPVpcRestart                      INTEGER,
                atmSoftPVpcRetryInterval                INTEGER,
                atmSoftPVpcRetryTimer                   INTEGER,
                atmSoftPVpcRetryThreshold               INTEGER,
                atmSoftPVpcRetryFailures                Gauge32,
                atmSoftPVpcRetryLimit                   INTEGER,
                atmSoftPVpcRowStatus                    RowStatus,
                atmSoftPVpcTargetVpci                   INTEGER
                }


atmSoftPVpcLeafReference        OBJECT-TYPE
        SYNTAX  INTEGER  (1..63535)
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "An arbitrary integer which, in the case of the
                source VPL having a atmVplCastType of
                'p2mpRoot', serves to distinguish between the
                multiple leaves attached to a root of a
                point-to-multipoint Soft PVPC.

                If the atmVplCastType is not 'p2mpRoot', the
                value 1 shall be used."
        ::= { atmSoftPVpcEntry 1 }


atmSoftPVpcTargetAddress        OBJECT-TYPE
        SYNTAX  AtmAddr
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The target ATM Address of this Soft PVPC.  If no
                address is supplied, no attempts to establish the
                Soft PVPC are initiated."
        ::= { atmSoftPVpcEntry 2 }


atmSoftPVpcTargetSelectType     OBJECT-TYPE
        SYNTAX  INTEGER {
                        required(1),
                        any(2)
                        }
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Indicates whether the target VPCI value
                is to be used at the destination.
                If the value 'any' is specified, the
                destination switch will choose the VPCI
                value. In such a case, once the Soft PVPC
                atmSoftPVpcOperStatus value is 'connected',
                the value of this object changes to 'required',
                such that the same VPCI value will continue to
                be used even if the connection is subsequently
                torn down and re-established. The VPCI value
                chosen will be available for reading in
                atmSoftPVpcTargetVpci.

                If the value 'required' is specified, then
                a value must be supplied for object
                atmSoftPVpcTargetVpci prior to activation
                of the row. This value is then to be used
                at the destination."
        DEFVAL { required }
        ::= { atmSoftPVpcEntry 3 }


atmSoftPVpcTargetVpi    OBJECT-TYPE
        SYNTAX  INTEGER (0..4095)
        MAX-ACCESS      read-create
        STATUS  deprecated
        DESCRIPTION
                "The VPI value of the VPL used at the
                target interface.

                This value must be filled in when the
                atmSoftPVpcTargetSelectType is set to 'required'.
                This value is not relevant when the value of
                atmSoftPVpcTargetSelectType is 'any'.
 
                This object is replaced by the new object
                atmSoftPVpcTargetVpci."
        ::= { atmSoftPVpcEntry 4 }


atmSoftPVpcLastReleaseCause     OBJECT-TYPE
        SYNTAX  INTEGER(1..127)
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Value of the Cause field of the Cause
                Information Element in the last RELEASE
                signalling message received for this Soft PVPC.
                Indicates the reason for the Release."
        ::= { atmSoftPVpcEntry 5 }


atmSoftPVpcLastReleaseDiagnostic        OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE(0..8))
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Value of the first 8 bytes of diagnostic information
                from the Cause field of the Cause Information Element
                in the last RELEASE signalling message received for
                this Soft PVPC."
        ::= { atmSoftPVpcEntry 6 }


atmSoftPVpcOperStatus   OBJECT-TYPE
        SYNTAX  INTEGER {
                                other(1),
                                establishmentInProgress(2),
                                connected(3),
                                retriesExhausted(4),
                                noAddressSupplied(5),
                                lowerLayerDown(6)
                                }
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
              "Describes the status of the Soft PVPC. 
                   other              - none of the types specified below
                   establishmentInProgress - connection or party is not
                                             operational, but setup or add
                                             party attempts are ongoing
                   connected          - connection or party is currently
                                        operational
                   retriesExhausted   - retry limit has been reached and
                                        setup or add party attempts have
                                        ceased
                   noAddressSupplied  - no remote address has been
                                        configured, so no setup or add
                                        party attempts are initiated
                   lowerLayerDown     - underlying ATM interface is not
                                        operational
                When the row is not 'active', the value of this
                object is 'other'."
        ::= { atmSoftPVpcEntry 7 }


atmSoftPVpcRestart      OBJECT-TYPE
        SYNTAX  INTEGER {
                                restart(1),
                                noop(2)
                                }
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "When the value is set to 'restart', the Soft PVPC is
                released if necessary and a new setup procedure is begun.
                As a result of this action, the atmSoftPVpcOperStatus
                object transitions to 'establishmentInProgress' (if not
                already in this state) and the atmSoftPVpcRetryFailures
                object is cleared.

                When the value is set to 'noop', no operation is performed.
                When read, the value 'noop' is returned."
        ::= { atmSoftPVpcEntry 8 }


atmSoftPVpcRetryInterval        OBJECT-TYPE
        SYNTAX  INTEGER (0..3600)
        UNITS           "seconds"
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Defines the period to wait before attempting
                to establish the Soft PVPC after the first failed 
                call attempt.  The time to wait between subsequent
                call attempts may differ to implement a backoff scheme.
                Zero represents an infinite interval indicating no 
                retries."
        DEFVAL { 10 }
        ::= { atmSoftPVpcEntry 9 }


atmSoftPVpcRetryTimer   OBJECT-TYPE
        SYNTAX  INTEGER (0..86400)
        UNITS           "seconds" 
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Indicates the current value of the retry timer for
                this connection. When the value reaches zero an attempt
                will be made to establish the Soft PVPC. When the
                timer is not running, the value zero shall be returned."
        ::= { atmSoftPVpcEntry 10 }


atmSoftPVpcRetryThreshold  OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Indicates the number of consecutive call setup attempts for
                the same Soft PVPC which need to fail before the
                atmSoftPvcCallFailures object is incremented. A value of
                zero indicates that an infinite number of call attempts
                are required to increment the atmSoftPvcCallFailures object
                and thus disables alarms for the Soft PVPC."
        DEFVAL { 1 }
        ::= { atmSoftPVpcEntry 11 }


atmSoftPVpcRetryFailures        OBJECT-TYPE
        SYNTAX  Gauge32 
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "Indicates how many attempts to establish the connection
                have failed.  This count is reset whenever a connection
                is successfully established or the Soft PVPC is restarted."
        ::= { atmSoftPVpcEntry 12 }


atmSoftPVpcRetryLimit   OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Sets a maximum limit on how many consecutive unsuccessful
                call setup attempts can be made before stopping the attempt
                to set up the connection. If this limit is reached then
                management action will be required (e.g. setting
                atmSoftPVpcRestart to 'restart') to initiate a new attempt
                to establish the connection. A value of zero indicates no
                limit - the attempts will continue until successful."
        DEFVAL { 0 }
        ::= { atmSoftPVpcEntry 13 }


atmSoftPVpcRowStatus    OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Used to create and delete a Soft PVPC. When this
                object is set to 'active' an attempt is made to
                set up the Soft PVPC. When this object has the value
                'active' and is set to another value, any
                set-up or connection in-progress is released."
        ::= { atmSoftPVpcEntry 14 }


atmSoftPVpcTargetVpci    OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "The VPCI value of the VPL used at the target interface.
 
                This value must be filled in when the
                atmSoftPVpcTargetSelectType is set to 'required'.
                This value is not relevant when the value of
                atmSoftPVpcTargetSelectType is 'any'."
        ::= { atmSoftPVpcEntry 15 }
 
 
--
-- This table is used to configure one or more ATM addresses
-- prior to setting up Soft PVCCs or Soft PVPCs at an
-- interface in a node.  The interface will normally be an ATM
-- interface, but other interface types may also use this table
-- for interworking with ATM.
-- In addition, prior to setting up a Soft PVC at the source
-- interface, this table can be consulted at the destination
-- interface.
--

atmInterfaceSoftPvcAddressTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF AtmInterfaceSoftPvcAddressEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "This table is used to configure ATM addresses at 
                an interface on this node prior to setting up
                Soft PVPCs or Soft PVPCs at that interface."
        ::= { atmSoftPvcMIBObjects 4 }


atmInterfaceSoftPvcAddressEntry OBJECT-TYPE
        SYNTAX  AtmInterfaceSoftPvcAddressEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "ATM address entry for configuring Soft PVCCs or
                Soft PVPCs at an interface."
        INDEX { ifIndex, atmInterfaceSoftPvcAddress }
        ::= { atmInterfaceSoftPvcAddressTable 1 }


AtmInterfaceSoftPvcAddressEntry ::=
        SEQUENCE {
                atmInterfaceSoftPvcAddress              AtmAddr,
                atmInterfaceSoftPvcAddressRowStatus     RowStatus
                }


atmInterfaceSoftPvcAddress      OBJECT-TYPE
        SYNTAX  AtmAddr
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "Specifies the address that can be used to establish a Soft
                PVCC or Soft PVPC to this interface."
        ::= { atmInterfaceSoftPvcAddressEntry 1 }


atmInterfaceSoftPvcAddressRowStatus     OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS      read-create
        STATUS  current
        DESCRIPTION
                "Used to create and delete an ATM address at this interface
                for setting up Soft PVCCs or Soft PVPCs."
        ::= { atmInterfaceSoftPvcAddressEntry 2 }


-- Currently Failing Soft PVCC table


atmCurrentlyFailingSoftPVccTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF AtmCurrentlyFailingSoftPVccEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "A table indicating all Soft Permanent Virtual Channel
                Connections (Soft PVCCs) for which the atmSoftPVccRowStatus
                is 'active' and the atmSoftPVccOperStatus is other than
                'connected'."
        ::= { atmSoftPvcMIBObjects 5 }


atmCurrentlyFailingSoftPVccEntry        OBJECT-TYPE
        SYNTAX  AtmCurrentlyFailingSoftPVccEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "Each entry in this table represents a Soft Permanent
                Virtual Channel Connection (Soft PVCC) for which the
                atmSoftPVccRowStatus is 'active' and the 
                atmSoftPVccOperStatus is other than 'connected'."
        INDEX { ifIndex,
                atmVclVpi,
                atmVclVci,
                atmSoftPVccLeafReference }
        ::= { atmCurrentlyFailingSoftPVccTable 1 }


AtmCurrentlyFailingSoftPVccEntry ::=
        SEQUENCE {
                atmCurrentlyFailingSoftPVccTimeStamp    TimeStamp
                }


atmCurrentlyFailingSoftPVccTimeStamp    OBJECT-TYPE
        SYNTAX  TimeStamp
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "The time at which this Soft PVCC began to fail."
        ::= { atmCurrentlyFailingSoftPVccEntry 1 }




-- Currently Failing Soft PVPC table

atmCurrentlyFailingSoftPVpcTable        OBJECT-TYPE
        SYNTAX  SEQUENCE OF AtmCurrentlyFailingSoftPVpcEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "A table indicating all Soft Permanent Virtual Path
                Connections (Soft PVPCs) for which the atmSoftPVpcRowStatus
                is 'active' and the atmSoftPVpcOperStatus is other than
                'connected'."
        ::= { atmSoftPvcMIBObjects 6 }


atmCurrentlyFailingSoftPVpcEntry        OBJECT-TYPE
        SYNTAX  AtmCurrentlyFailingSoftPVpcEntry
        MAX-ACCESS      not-accessible
        STATUS  current
        DESCRIPTION
                "Each entry in this table represents a Soft Permanent
                Virtual Path Connection (Soft PVPC) for which the
                atmSoftPVpcRowStatus is 'active' and the 
                atmSoftPVpcOperStatus is other than 'connected'."
        INDEX { ifIndex,
                atmVclVpi,
                atmSoftPVpcLeafReference }
        ::= { atmCurrentlyFailingSoftPVpcTable 1 }


AtmCurrentlyFailingSoftPVpcEntry ::=
        SEQUENCE {
                atmCurrentlyFailingSoftPVpcTimeStamp    TimeStamp
                }


atmCurrentlyFailingSoftPVpcTimeStamp    OBJECT-TYPE
        SYNTAX  TimeStamp
        MAX-ACCESS      read-only
        STATUS  current
        DESCRIPTION
                "The time at which this Soft PVPC began to fail."
        ::= { atmCurrentlyFailingSoftPVpcEntry 1 }


-- Soft PVC Traps

atmSoftPvcTraps         OBJECT IDENTIFIER ::= { atmSoftPvcMIBTraps 1 }

atmSoftPvcTrapsPrefix   OBJECT IDENTIFIER ::= { atmSoftPvcTraps 0 }

atmSoftPvcCallFailuresTrap      NOTIFICATION-TYPE
        OBJECTS { atmSoftPvcCallFailures,
                        atmSoftPvcCurrentlyFailingSoftPVccs,
                        atmSoftPvcCurrentlyFailingSoftPVpcs }
        STATUS  current
        DESCRIPTION
                "A notification indicating that one or more series of
                call attempts in trying to establish a Soft PVPC or
                Soft PVCC have failed since the last
                atmSoftPvcCallFailureTrap was sent. If this trap has
                not been sent for the last atmSoftPvcNotificationInterval,
                then it will be sent on the next increment of
                atmSoftPvcCallFailures."
::= { atmSoftPvcTrapsPrefix 1 }


-- conformance information

atmSoftPvcMIBConformance
                OBJECT IDENTIFIER ::= { atmSoftPvcMIB 3 }
atmSoftPvcMIBCompliances
                OBJECT IDENTIFIER ::= { atmSoftPvcMIBConformance 1 }
atmSoftPvcMIBGroups
                OBJECT IDENTIFIER ::= { atmSoftPvcMIBConformance 2 }


-- compliance statements

atmSoftPvcMIBCompliance2   MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for the ATM Soft PVC group."
        MODULE  -- this module
        MANDATORY-GROUPS
                { atmSoftPvcBaseMIBGroup, atmSoftPvcVccMIBGroup2,
                  atmSoftPvcAddressMIBGroup
                }
        OBJECT atmSoftPVccRetryLimit
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access not required."
 
        GROUP atmSoftPvcVpcMIBGroup2
        DESCRIPTION
                "Required if Soft PVPCs are supported."
 
        OBJECT atmSoftPVpcRetryLimit
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access not required."
 
        GROUP atmSoftPvcVccFrameRelayMIBGroup
        DESCRIPTION
                "Required if interworking of ATM and Frame Relay
                Soft PVCCs is supported."

        GROUP atmSoftPvcCallFailuresEventGroup
        DESCRIPTION
                "Call failures events are optional."
 
        ::= { atmSoftPvcMIBCompliances 2 }
 

-- units of conformance

atmSoftPvcBaseMIBGroup  OBJECT-GROUP
        OBJECTS {
                atmSoftPvcCallFailuresTrapEnable,
                atmSoftPvcCallFailures,
                atmSoftPvcCurrentlyFailingSoftPVccs,
                atmSoftPvcCurrentlyFailingSoftPVpcs,
                atmSoftPvcNotificationInterval
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects to related to failing
                Soft PVCCs and Soft PVPCs."
        ::= { atmSoftPvcMIBGroups 1 }


atmSoftPvcAddressMIBGroup       OBJECT-GROUP
        OBJECTS {
                atmInterfaceSoftPvcAddressRowStatus
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects managing interfaces addresses for
                Soft PVCCs and Soft PVPCs."
        ::= { atmSoftPvcMIBGroups 4 }


atmCurrentlyFailingSoftPVccMIBGroup     OBJECT-GROUP
        OBJECTS {
                atmCurrentlyFailingSoftPVccTimeStamp
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects for management of currently
                failing Soft PVCCs."
        ::= { atmSoftPvcMIBGroups 5 }


atmCurrentlyFailingSoftPVpcMIBGroup     OBJECT-GROUP
        OBJECTS {
                atmCurrentlyFailingSoftPVpcTimeStamp
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects for management of currently
                failing Soft PVPCs."
        ::= { atmSoftPvcMIBGroups 6 }


atmSoftPvcVccMIBGroup2  OBJECT-GROUP
        OBJECTS {
                atmSoftPVccTargetAddress,
                atmSoftPVccTargetSelectType, atmSoftPVccTargetVpci,
                atmSoftPVccTargetVci, atmSoftPVccLastReleaseCause,
                atmSoftPVccLastReleaseDiagnostic,
                atmSoftPVccOperStatus, atmSoftPVccRestart,
                atmSoftPVccRetryInterval,
                atmSoftPVccRetryTimer, atmSoftPVccRetryThreshold,
                atmSoftPVccRetryFailures, atmSoftPVccRetryLimit, 
                atmSoftPVccRowStatus, atmSoftPVccTargetType
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects managing Soft PVCCs."
        ::= { atmSoftPvcMIBGroups 7 }


atmSoftPvcVpcMIBGroup2  OBJECT-GROUP
        OBJECTS {
                atmSoftPVpcTargetAddress,
                atmSoftPVpcTargetSelectType, atmSoftPVpcTargetVpci,
                atmSoftPVpcLastReleaseCause,
                atmSoftPVpcLastReleaseDiagnostic,
                atmSoftPVpcOperStatus, atmSoftPVpcRestart,
                atmSoftPVpcRetryInterval,
                atmSoftPVpcRetryTimer, atmSoftPVpcRetryThreshold,
                atmSoftPVpcRetryFailures,
                atmSoftPVpcRetryLimit, atmSoftPVpcRowStatus
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects managing Soft PVPCs."
        ::= { atmSoftPvcMIBGroups 8 }


atmSoftPvcVccFrameRelayMIBGroup  OBJECT-GROUP
        OBJECTS {
                atmSoftPVccTargetDlci
                }
        STATUS  current
        DESCRIPTION
                "A collection of objects managing ATM/Frame Relay
                Soft PVCCs."
        ::= { atmSoftPvcMIBGroups 9 }

atmSoftPvcCallFailuresEventGroup  NOTIFICATION-GROUP
        NOTIFICATIONS {
                      atmSoftPvcCallFailuresTrap
                      }
        STATUS current
        DESCRIPTION
                "Call failure events"
        ::= { atmSoftPvcMIBGroups 10 }
 
 
-- deprecated definitions - objects
 
-- atmSoftPVccTargetVpi
-- atmSoftPVpcTargetVpi
 
 
-- deprecated definitions - compliance statements
 
atmSoftPvcMIBCompliance MODULE-COMPLIANCE
        STATUS  deprecated
        DESCRIPTION
                "The compliance statement for the ATM Soft PVC group."
        MODULE  -- this module
        MANDATORY-GROUPS
                { atmSoftPvcBaseMIBGroup, atmSoftPvcVccMIBGroup,
                  atmSoftPvcAddressMIBGroup
                }
        OBJECT atmSoftPVccRetryLimit
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access not required."

        GROUP atmSoftPvcVpcMIBGroup
        DESCRIPTION
                "Required if Soft PVPCs are supported."

        OBJECT atmSoftPVpcRetryLimit
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access not required."

        ::= { atmSoftPvcMIBCompliances 1 }


-- deprecated definitions - units of conformance
 
atmSoftPvcVccMIBGroup   OBJECT-GROUP
        OBJECTS {
                atmSoftPVccTargetAddress,
                atmSoftPVccTargetSelectType, atmSoftPVccTargetVpi,
                atmSoftPVccTargetVci, atmSoftPVccLastReleaseCause,
                atmSoftPVccLastReleaseDiagnostic,
                atmSoftPVccOperStatus, atmSoftPVccRestart,
                atmSoftPVccRetryInterval,
                atmSoftPVccRetryTimer, atmSoftPVccRetryThreshold,
                atmSoftPVccRetryFailures, atmSoftPVccRetryLimit, 
                atmSoftPVccRowStatus
                }
        STATUS  deprecated
        DESCRIPTION
                "A collection of objects managing Soft PVCCs."
        ::= { atmSoftPvcMIBGroups 2 }


atmSoftPvcVpcMIBGroup   OBJECT-GROUP
        OBJECTS {
                atmSoftPVpcTargetAddress,
                atmSoftPVpcTargetSelectType, atmSoftPVpcTargetVpi,
                atmSoftPVpcLastReleaseCause,
                atmSoftPVpcLastReleaseDiagnostic,
                atmSoftPVpcOperStatus, atmSoftPVpcRestart,
                atmSoftPVpcRetryInterval,
                atmSoftPVpcRetryTimer, atmSoftPVpcRetryThreshold,
                atmSoftPVpcRetryFailures,
                atmSoftPVpcRetryLimit,atmSoftPVpcRowStatus
                }
        STATUS  deprecated
        DESCRIPTION
                "A collection of objects managing Soft PVPCs."
        ::= { atmSoftPvcMIBGroups 3 }


END